31 research outputs found

    Evaluating Scalable Distributed Erlang for Scalability and Reliability

    Get PDF
    Large scale servers with hundreds of hosts and tens of thousands of cores are becoming common. To exploit these platforms software must be both scalable and reliable, and distributed actor languages like Erlang are a proven technology in this area. While distributed Erlang conceptually supports the engineering of large scale reliable systems, in practice it has some scalability limits that force developers to depart from the standard language mechanisms at scale. In earlier work we have explored these scalability limitations, and addressed them by providing a Scalable Distributed (SD) Erlang library that partitions the network of Erlang Virtual Machines (VMs) into scalable groups (s_groups). This paper presents the first systematic evaluation of SD Erlang s_groups and associated tools, and how they can be used. We present a comprehensive evaluation of the scalability and reliability of SD Erlang using three typical benchmarks and a case study. We demonstrate that s_groups improve the scalability of reliable and unreliable Erlang applications on up to 256 hosts (6,144 cores). We show that SD Erlang preserves the class-leading distributed Erlang reliability model, but scales far better than the standard model. We present a novel, systematic, and tool-supported approach for refactoring distributed Erlang applications into SD Erlang. We outline the new and improved monitoring, debugging and deployment tools for large scale SD Erlang applications. We demonstrate the scaling characteristics of key tools on systems comprising up to 10 K Erlang VMs

    Coiling Instability of Multilamellar Membrane Tubes with Anchored Polymers

    Full text link
    We study experimentally a coiling instability of cylindrical multilamellar stacks of phospholipid membranes, induced by polymers with hydrophobic anchors grafted along their hydrophilic backbone. Our system is unique in that coils form in the absence of both twist and adhesion. We interpret our experimental results in terms of a model in which local membrane curvature and polymer concentration are coupled. The model predicts the occurrence of maximally tight coils above a threshold polymer occupancy. A proper comparison between the model and experiment involved imaging of projections from simulated coiled tubes with maximal curvature and complicated torsions.Comment: 11 pages + 7 GIF figures + 10 JPEG figure

    Interactions between Magnetic Nanowires and Living Cells : Uptake, Toxicity and Degradation

    Full text link
    We report on the uptake, toxicity and degradation of magnetic nanowires by NIH/3T3 mouse fibroblasts. Magnetic nanowires of diameters 200 nm and lengths comprised between 1 {\mu}m and 40 {\mu}m are fabricated by controlled assembly of iron oxide ({\gamma}-Fe2O3) nanoparticles. Using optical and electron microscopy, we show that after 24 h incubation the wires are internalized by the cells and located either in membrane-bound compartments or dispersed in the cytosol. Using fluorescence microscopy, the membrane-bound compartments were identified as late endosomal/lysosomal endosomes labeled with lysosomal associated membrane protein (Lamp1). Toxicity assays evaluating the mitochondrial activity, cell proliferation and production of reactive oxygen species show that the wires do not display acute short-term (< 100 h) toxicity towards the cells. Interestingly, the cells are able to degrade the wires and to transform them into smaller aggregates, even in short time periods (days). This degradation is likely to occur as a consequence of the internal structure of the wires, which is that of a non-covalently bound aggregate. We anticipate that this degradation should prevent long-term asbestos-like toxicity effects related to high aspect ratio morphologies and that these wires represent a promising class of nanomaterials for cell manipulation and microrheology.Comment: 21 pages 12 figure

    Scaling Reliably: Improving the Scalability of the Erlang Distributed Actor Platform

    Get PDF
    Distributed actor languages are an effective means of constructing scalable reliable systems, and the Erlang programming language has a well-established and influential model. While the Erlang model conceptually provides reliable scalability, it has some inherent scalability limits and these force developers to depart from the model at scale. This article establishes the scalability limits of Erlang systems and reports the work of the EU RELEASE project to improve the scalability and understandability of the Erlang reliable distributed actor model. We systematically study the scalability limits of Erlang and then address the issues at the virtual machine, language, and tool levels. More specifically: (1) We have evolved the Erlang virtual machine so that it can work effectively in large-scale single-host multicore and NUMA architectures. We have made important changes and architectural improvements to the widely used Erlang/OTP release. (2) We have designed and implemented Scalable Distributed (SD) Erlang libraries to address language-level scalability issues and provided and validated a set of semantics for the new language constructs. (3) To make large Erlang systems easier to deploy, monitor, and debug, we have developed and made open source releases of five complementary tools, some specific to SD Erlang. Throughout the article we use two case studies to investigate the capabilities of our new technologies and tools: a distributed hash table based Orbit calculation and Ant Colony Optimisation (ACO). Chaos Monkey experiments show that two versions of ACO survive random process failure and hence that SD Erlang preserves the Erlang reliability model. While we report measurements on a range of NUMA and cluster architectures, the key scalability experiments are conducted on the Athos cluster with 256 hosts (6,144 cores). Even for programs with no global recovery data to maintain, SD Erlang partitions the network to reduce network traffic and hence improves performance of the Orbit and ACO benchmarks above 80 hosts. ACO measurements show that maintaining global recovery data dramatically limits scalability; however, scalability is recovered by partitioning the recovery data. We exceed the established scalability limits of distributed Erlang, and do not reach the limits of SD Erlang for these benchmarks at this scal

    Dynamics of transient pores in stretched vesicles

    No full text
    We image macroscopic transient pores in mechanically stretched giant vesicles. Holes open above a critical radius r(c1), grow up to a radius r(c2), and close. We interpret the upper limit r(c2) by a relaxation of the membrane tension as the holes expand. The closing of the holes is caused by a further relaxation of the surface tension when the internal liquid leaks out. A dynamic model fits our data for the growth and closure of pores
    corecore